Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - [C#] Popolare combobox con dati Linq to Entities
Forum - C# / VB.NET - [C#] Popolare combobox con dati Linq to Entities

Avatar
sps84 (Normal User)
Expert


Messaggi: 202
Iscritto: 11/02/2009

Segnala al moderatore
Postato alle 20:49
Giovedì, 26/04/2012
Ciao a tutti sto stuiando linq to entities, per fare le provo adopero il database Northwind... nella prova che sto facendo popolo una combobox nell'evento load della pagina, e visualizzo il suo valuemember in un controllo label.
Codice sorgente - presumibilmente C#

  1. private void Form1_Load(object sender, EventArgs e)
  2.         {
  3.             using (NorthwindEntities db = new NorthwindEntities())
  4.             {
  5.                 var query = (from x in db.Employees
  6.                             orderby x.EmployeeID descending
  7.                             select new {
  8.                                 EmployeeID = x.EmployeeID,
  9.                                 FirstName = x.FirstName
  10.                             };
  11.  
  12.                 comboBoxOredrID.DataSource = query;
  13.  
  14.                 comboBoxOredrID.DisplayMember = "FirstName";
  15.                 comboBoxOredrID.ValueMember = "EmployeeID";
  16.             }
  17.  
  18.            
  19.         }
  20.  
  21.         private void comboBoxOredrID_SelectedIndexChanged(object sender, EventArgs e)
  22.         {
  23.              this.label1.Text =  comboBoxOredrID.ValueMember.ToString();
  24.          }



Riesco a visualizzare i vari nomi nella combo box ma... nell'evento SelectIndexChanged la label ottiene come valore "EmployeeID" e non il numero dell' Id.
Dove sto sbagliando?

Ultima modifica effettuata da sps84 il 26/04/2012 alle 20:49
PM
Avatar
netarrow (Admin)
Guru^2


Messaggi: 2502
Iscritto: 12/05/2004

Up
1
Down
V
Segnala al moderatore
Postato alle 22:06
Giovedì, 26/04/2012
Devi leggere il valore dell'id da comboBoxOredrID.SelectedValue.
Se rileggi il valore di ValueMember ti ritorna ciò che ci hai messo prima, cioè il nome del field.

si me ne sono accorto dopo della cavolata che ho chiesto la stanchezza gioca brutti scherzi! ;-) Grazie mille comunque della risposta - sps84 - 27/04/12 00:12
PM